3

由于segmentfault的特殊字符处理也有问题,贴上来全乱套了,显示也不完整,请到我博客下载“原文

关于addslashes()的应用,php的魔术引用(magic_quotes_gpc),在segmentfault上面有很多的提问,大部分都没能明白的说清楚。当然,我也疑惑了很久,虽然有时候弄清楚了,但过一段时间又忘记,搞的自己总是反复的为这个问题纠结。俗话说好记性不如烂笔头,那不妨写下来。

本文不涉及到pdo和mysql的prepare预处理的部分,如果你是做一个新系统建议直接使用这种方法。如果你有一个老系统,改来改去很麻烦,那就接着往下看。本文涉及到的环境是php5.2x-5.3x版本。

好了,标题上写到了addslashes(),原因是问这个的人太多,我在这里将把问题从php特殊字符的处理方面来说说。我把php的特殊字符分为两类,如下:

  1. magic_qoute、addslashe、stripslashes、单引号、双引号
    a.addslashes与magic_quotes的关系
    b.stripslashes
    c.变量中的'和"怎么处理
  2. 破拆号、htmlspecialchars
    a..对输出到html标签内的特殊字符进行转义
    b.富文本编辑器输出转义

impig33
713 声望8 粉丝